cddde85a681ba2ecdc8a142481f983cf50221ddf,platform/platform-impl/src/com/intellij/openapi/editor/actions/MoveCaretDownWithSelectionAction.java,Handler,execute,#Editor#Caret#DataContext#,45
Before Change
@Override
public void execute(Editor editor, @NotNull Caret caret, DataContext dataContext) {
if (editor.isColumnMode() && editor.getCaretModel().supportsMultipleCarets()) {
caret.clone(false);
}
else {
editor.getCaretModel().moveCaretRelatively(0, 1, true, editor.isColumnMode(), true);
After Change
private static class Handler extends EditorActionHandler {
@Override
public void execute(Editor editor, @Nullable Caret caret, DataContext dataContext) {
if (!editor.getCaretModel().supportsMultipleCarets()) {
editor.getCaretModel().moveCaretRelatively(0, 1, true, editor.isColumnMode(), true);
return;
}
if (editor.isColumnMode()) {
EditorActionUtil.cloneOrRemoveCaret(editor, caret == null ? editor.getCaretModel().getPrimaryCaret() : caret, false);
}
else {
CaretAction caretAction = new CaretAction() {
@Override
public void perform(Caret caret) {
caret.moveCaretRelatively(0, 1, true, true);
}
};
if (caret == null) {
editor.getCaretModel().runForEachCaret(caretAction);
}
else {
caretAction.perform(caret);